package com.bwei.like.mynewstop.Bean;

import com.google.gson.annotations.SerializedName;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * Created by zhiyuan on 16/9/3.
 */
public class NewsCategoryRoot implements Serializable{

    private boolean has_more;
    private boolean has_more_to_refresh;
    private int login_status;
    private String message;
    private String post_content_hint;
    private int show_et_status;
    /**
     * app_name : 今日头条
     * display_duration : 2
     * display_info : 今日头条推荐引擎有15条更新
     * display_template : 今日头条推荐引擎有%s条更新
     * download_url :
     * open_url :
     * package_name :
     * type : app
     * web_url :
     */

    private TipsBean tips;
    private int total_number;
    /**
     * abstract : 治国理政进行时
     * action_list : [{"action":1,"desc":"","extra":{}},{"action":3,"desc":"","extra":{}},{"action":7,"desc":"","extra":{}},{"action":9,"desc":"","extra":{}}]
     * aggr_type : 1
     * article_alt_url : http://toutiao.com/group/article/6335946386239914498/
     * article_sub_type : 0
     * article_type : 1
     * article_url : http://a3.pstatp.com/subject2/6335946386239914498/?version=1
     * ban_comment : 0
     * behot_time : 1478073972
     * bury_count : 203
     * cell_flag : 43
     * cell_layout_style : 1
     * cell_type : 0
     * comment_count : 2767
     * cursor : 1478073972999
     * digg_count : 515
     * display_url : http://a3.pstatp.com/subject2/6335946386239914498/?version=1
     * filter_words : []
     * group_id : 6335946386239914498
     * has_image : false
     * has_m3u8_video : 0
     * has_mp4_video : 0
     * has_video : false
     * hot : 0
     * ignore_web_transform : 1
     * image_list : []
     * is_stick : true
     * item_id : 6335946408050295297
     * item_version : 0
     * label : 置顶
     * label_style : 6
     * large_image_list : []
     * level : 0
     * like_count : 515
     * middle_image : {}
     * preload_web : 1
     * publish_time : 1478064859
     * read_count : 11495415
     * repin_count : 75832
     * share_url : http://toutiao.com/group/6335946386239914498/?iid=3839760160&app=news_article
     * source : 专题
     * source_avatar : http://p2.pstatp.com/medium/320000cea4db914cf7e
     * source_icon_style : 6
     * source_open_url : sslocal://search?from=feed_source&keyword=%E4%B8%93%E9%A2%98
     * tag : news_politics
     * tag_id : 6335946386239914498
     * tip : 0
     * title : 习近平会见洪秀柱，谈了这几点非常重要！
     * url : http://a3.pstatp.com/subject2/6335946386239914498/?version=1
     * user_repin : 0
     * user_verified : 0
     * verified_content :
     * video_style : 0
     */

    private List<DataBean> data;

    public boolean isHas_more() {
        return has_more;
    }

    public void setHas_more(boolean has_more) {
        this.has_more = has_more;
    }

    public boolean isHas_more_to_refresh() {
        return has_more_to_refresh;
    }

    public void setHas_more_to_refresh(boolean has_more_to_refresh) {
        this.has_more_to_refresh = has_more_to_refresh;
    }

    public int getLogin_status() {
        return login_status;
    }

    public void setLogin_status(int login_status) {
        this.login_status = login_status;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public String getPost_content_hint() {
        return post_content_hint;
    }

    public void setPost_content_hint(String post_content_hint) {
        this.post_content_hint = post_content_hint;
    }

    public int getShow_et_status() {
        return show_et_status;
    }

    public void setShow_et_status(int show_et_status) {
        this.show_et_status = show_et_status;
    }

    public TipsBean getTips() {
        return tips;
    }

    public void setTips(TipsBean tips) {
        this.tips = tips;
    }

    public int getTotal_number() {
        return total_number;
    }

    public void setTotal_number(int total_number) {
        this.total_number = total_number;
    }

    public List<DataBean> getData() {
        return data;
    }

    public void setData(List<DataBean> data) {
        this.data = data;
    }

    public static class TipsBean implements Serializable{
        private String app_name;
        private int display_duration;
        private String display_info;
        private String display_template;
        private String download_url;
        private String open_url;
        private String package_name;
        private String type;
        private String web_url;



        public String getApp_name() {
            return app_name;
        }

        public void setApp_name(String app_name) {
            this.app_name = app_name;
        }

        public int getDisplay_duration() {
            return display_duration;
        }

        public void setDisplay_duration(int display_duration) {
            this.display_duration = display_duration;
        }

        public String getDisplay_info() {
            return display_info;
        }

        public void setDisplay_info(String display_info) {
            this.display_info = display_info;
        }

        public String getDisplay_template() {
            return display_template;
        }

        public void setDisplay_template(String display_template) {
            this.display_template = display_template;
        }

        public String getDownload_url() {
            return download_url;
        }

        public void setDownload_url(String download_url) {
            this.download_url = download_url;
        }

        public String getOpen_url() {
            return open_url;
        }

        public void setOpen_url(String open_url) {
            this.open_url = open_url;
        }

        public String getPackage_name() {
            return package_name;
        }

        public void setPackage_name(String package_name) {
            this.package_name = package_name;
        }

        public String getType() {
            return type;
        }

        public void setType(String type) {
            this.type = type;
        }

        public String getWeb_url() {
            return web_url;
        }

        public void setWeb_url(String web_url) {
            this.web_url = web_url;
        }
    }

    public static class DataBean implements Serializable{
        @SerializedName("abstract")
        private String abstractX;
        private int aggr_type;
        private String article_alt_url;
        private int article_sub_type;
        private int article_type;
        private String article_url;
        private int ban_comment;
        private int behot_time;
        private int bury_count;
        private int cell_flag;
        private int cell_layout_style;
        private int cell_type;
        private int comment_count;
        private long cursor;
        private int digg_count;
        private String display_url;
        private long group_id;
        private boolean has_image;
        private int has_m3u8_video;
        private int has_mp4_video;
        private boolean has_video;
        private int hot;
        private int ignore_web_transform;
        private boolean is_stick;
        private long item_id;
        private int item_version;
        private String label;
        private int label_style;
        private int level;
        private int like_count;
        private MiddleImageBean middle_image;
        private int preload_web;
        private int publish_time;
        private int read_count;
        private int repin_count;
        private String share_url;
        private String source;
        private String source_avatar;
        private int source_icon_style;
        private String source_open_url;
        private String tag;
        private long tag_id;
        private int tip;
        private String title;
        private String url;
        private int user_repin;
        private int user_verified;
        private String verified_content;
        private int video_style;


        @Override
        public boolean equals(Object o) {
            if (this == o) return true;
            if (o == null || getClass() != o.getClass()) return false;

            DataBean dataBean = (DataBean) o;


            return this.title.equals(((DataBean) o).title);

        }

        @Override
        public int hashCode() {
            int result = abstractX != null ? abstractX.hashCode() : 0;
            result = 31 * result + aggr_type;
            result = 31 * result + (article_alt_url != null ? article_alt_url.hashCode() : 0);
            result = 31 * result + article_sub_type;
            result = 31 * result + article_type;
            result = 31 * result + (article_url != null ? article_url.hashCode() : 0);
            result = 31 * result + ban_comment;
            result = 31 * result + behot_time;
            result = 31 * result + bury_count;
            result = 31 * result + cell_flag;
            result = 31 * result + cell_layout_style;
            result = 31 * result + cell_type;
            result = 31 * result + comment_count;
            result = 31 * result + (int) (cursor ^ (cursor >>> 32));
            result = 31 * result + digg_count;
            result = 31 * result + (display_url != null ? display_url.hashCode() : 0);
            result = 31 * result + (int) (group_id ^ (group_id >>> 32));
            result = 31 * result + (has_image ? 1 : 0);
            result = 31 * result + has_m3u8_video;
            result = 31 * result + has_mp4_video;
            result = 31 * result + (has_video ? 1 : 0);
            result = 31 * result + hot;
            result = 31 * result + ignore_web_transform;
            result = 31 * result + (is_stick ? 1 : 0);
            result = 31 * result + (int) (item_id ^ (item_id >>> 32));
            result = 31 * result + item_version;
            result = 31 * result + (label != null ? label.hashCode() : 0);
            result = 31 * result + label_style;
            result = 31 * result + level;
            result = 31 * result + like_count;
            result = 31 * result + (middle_image != null ? middle_image.hashCode() : 0);
            result = 31 * result + preload_web;
            result = 31 * result + publish_time;
            result = 31 * result + read_count;
            result = 31 * result + repin_count;
            result = 31 * result + (share_url != null ? share_url.hashCode() : 0);
            result = 31 * result + (source != null ? source.hashCode() : 0);
            result = 31 * result + (source_avatar != null ? source_avatar.hashCode() : 0);
            result = 31 * result + source_icon_style;
            result = 31 * result + (source_open_url != null ? source_open_url.hashCode() : 0);
            result = 31 * result + (tag != null ? tag.hashCode() : 0);
            result = 31 * result + (int) (tag_id ^ (tag_id >>> 32));
            result = 31 * result + tip;
            result = 31 * result + (title != null ? title.hashCode() : 0);
            result = 31 * result + (url != null ? url.hashCode() : 0);
            result = 31 * result + user_repin;
            result = 31 * result + user_verified;
            result = 31 * result + (verified_content != null ? verified_content.hashCode() : 0);
            result = 31 * result + video_style;
            result = 31 * result + (action_list != null ? action_list.hashCode() : 0);
            result = 31 * result + (filter_words != null ? filter_words.hashCode() : 0);
            result = 31 * result + (image_list != null ? image_list.hashCode() : 0);
            result = 31 * result + (large_image_list != null ? large_image_list.hashCode() : 0);
            return result;
        }

        /**
         * action : 1
         * desc :
         * extra : {}
         */

        private List<ActionListBean> action_list;
        private List<Filter_Words> filter_words;
        private List<MiddleImageBean> image_list;
        private List<LargeImageBean> large_image_list;

        public class Filter_Words implements Serializable{
            public String id;
            public boolean is_selected;
            public String name;

            public String getId() {
                return id;
            }

            public void setId(String id) {
                this.id = id;
            }

            public boolean is_selected() {
                return is_selected;
            }

            public void setIs_selected(boolean is_selected) {
                this.is_selected = is_selected;
            }

            public String getName() {
                return name;
            }

            public void setName(String name) {
                this.name = name;
            }
        }

        public boolean is_stick() {
            return is_stick;
        }


        public String getAbstractX() {
            return abstractX;
        }

        public void setAbstractX(String abstractX) {
            this.abstractX = abstractX;
        }

        public int getAggr_type() {
            return aggr_type;
        }

        public void setAggr_type(int aggr_type) {
            this.aggr_type = aggr_type;
        }

        public String getArticle_alt_url() {
            return article_alt_url;
        }

        public void setArticle_alt_url(String article_alt_url) {
            this.article_alt_url = article_alt_url;
        }

        public int getArticle_sub_type() {
            return article_sub_type;
        }

        public void setArticle_sub_type(int article_sub_type) {
            this.article_sub_type = article_sub_type;
        }

        public int getArticle_type() {
            return article_type;
        }

        public void setArticle_type(int article_type) {
            this.article_type = article_type;
        }

        public String getArticle_url() {
            return article_url;
        }

        public void setArticle_url(String article_url) {
            this.article_url = article_url;
        }

        public int getBan_comment() {
            return ban_comment;
        }

        public void setBan_comment(int ban_comment) {
            this.ban_comment = ban_comment;
        }

        public int getBehot_time() {
            return behot_time;
        }

        public void setBehot_time(int behot_time) {
            this.behot_time = behot_time;
        }

        public int getBury_count() {
            return bury_count;
        }

        public void setBury_count(int bury_count) {
            this.bury_count = bury_count;
        }

        public int getCell_flag() {
            return cell_flag;
        }

        public void setCell_flag(int cell_flag) {
            this.cell_flag = cell_flag;
        }

        public int getCell_layout_style() {
            return cell_layout_style;
        }

        public void setCell_layout_style(int cell_layout_style) {
            this.cell_layout_style = cell_layout_style;
        }

        public int getCell_type() {
            return cell_type;
        }

        public void setCell_type(int cell_type) {
            this.cell_type = cell_type;
        }

        public int getComment_count() {
            return comment_count;
        }

        public void setComment_count(int comment_count) {
            this.comment_count = comment_count;
        }

        public long getCursor() {
            return cursor;
        }

        public void setCursor(long cursor) {
            this.cursor = cursor;
        }

        public int getDigg_count() {
            return digg_count;
        }

        public void setDigg_count(int digg_count) {
            this.digg_count = digg_count;
        }

        public String getDisplay_url() {
            return display_url;
        }

        public void setDisplay_url(String display_url) {
            this.display_url = display_url;
        }

        public long getGroup_id() {
            return group_id;
        }

        public void setGroup_id(long group_id) {
            this.group_id = group_id;
        }

        public boolean isHas_image() {
            return has_image;
        }

        public void setHas_image(boolean has_image) {
            this.has_image = has_image;
        }

        public int getHas_m3u8_video() {
            return has_m3u8_video;
        }

        public void setHas_m3u8_video(int has_m3u8_video) {
            this.has_m3u8_video = has_m3u8_video;
        }

        public int getHas_mp4_video() {
            return has_mp4_video;
        }

        public void setHas_mp4_video(int has_mp4_video) {
            this.has_mp4_video = has_mp4_video;
        }

        public boolean isHas_video() {
            return has_video;
        }

        public void setHas_video(boolean has_video) {
            this.has_video = has_video;
        }

        public int getHot() {
            return hot;
        }

        public void setHot(int hot) {
            this.hot = hot;
        }

        public int getIgnore_web_transform() {
            return ignore_web_transform;
        }

        public void setIgnore_web_transform(int ignore_web_transform) {
            this.ignore_web_transform = ignore_web_transform;
        }

        public boolean isIs_stick() {
            return is_stick;
        }

        public void setIs_stick(boolean is_stick) {
            this.is_stick = is_stick;
        }

        public long getItem_id() {
            return item_id;
        }

        public void setItem_id(long item_id) {
            this.item_id = item_id;
        }

        public int getItem_version() {
            return item_version;
        }

        public void setItem_version(int item_version) {
            this.item_version = item_version;
        }

        public String getLabel() {
            return label;
        }

        public void setLabel(String label) {
            this.label = label;
        }

        public int getLabel_style() {
            return label_style;
        }

        public void setLabel_style(int label_style) {
            this.label_style = label_style;
        }

        public int getLevel() {
            return level;
        }

        public void setLevel(int level) {
            this.level = level;
        }

        public int getLike_count() {
            return like_count;
        }

        public void setLike_count(int like_count) {
            this.like_count = like_count;
        }

        public MiddleImageBean getMiddle_image() {
            return middle_image;
        }

        public void setMiddle_image(MiddleImageBean middle_image) {
            this.middle_image = middle_image;
        }

        public int getPreload_web() {
            return preload_web;
        }

        public void setPreload_web(int preload_web) {
            this.preload_web = preload_web;
        }

        public int getPublish_time() {
            return publish_time;
        }

        public void setPublish_time(int publish_time) {
            this.publish_time = publish_time;
        }

        public int getRead_count() {
            return read_count;
        }

        public void setRead_count(int read_count) {
            this.read_count = read_count;
        }

        public int getRepin_count() {
            return repin_count;
        }

        public void setRepin_count(int repin_count) {
            this.repin_count = repin_count;
        }

        public String getShare_url() {
            return share_url;
        }

        public void setShare_url(String share_url) {
            this.share_url = share_url;
        }

        public String getSource() {
            return source;
        }

        public void setSource(String source) {
            this.source = source;
        }

        public String getSource_avatar() {
            return source_avatar;
        }

        public void setSource_avatar(String source_avatar) {
            this.source_avatar = source_avatar;
        }

        public int getSource_icon_style() {
            return source_icon_style;
        }

        public void setSource_icon_style(int source_icon_style) {
            this.source_icon_style = source_icon_style;
        }

        public String getSource_open_url() {
            return source_open_url;
        }

        public void setSource_open_url(String source_open_url) {
            this.source_open_url = source_open_url;
        }

        public String getTag() {
            return tag;
        }

        public void setTag(String tag) {
            this.tag = tag;
        }

        public long getTag_id() {
            return tag_id;
        }

        public void setTag_id(long tag_id) {
            this.tag_id = tag_id;
        }

        public int getTip() {
            return tip;
        }

        public void setTip(int tip) {
            this.tip = tip;
        }

        public String getTitle() {
            return title;
        }

        public void setTitle(String title) {
            this.title = title;
        }

        public String getUrl() {
            return url;
        }

        public void setUrl(String url) {
            this.url = url;
        }

        public int getUser_repin() {
            return user_repin;
        }

        public void setUser_repin(int user_repin) {
            this.user_repin = user_repin;
        }

        public int getUser_verified() {
            return user_verified;
        }

        public void setUser_verified(int user_verified) {
            this.user_verified = user_verified;
        }

        public String getVerified_content() {
            return verified_content;
        }

        public void setVerified_content(String verified_content) {
            this.verified_content = verified_content;
        }

        public int getVideo_style() {
            return video_style;
        }

        public void setVideo_style(int video_style) {
            this.video_style = video_style;
        }

        public List<ActionListBean> getAction_list() {
            return action_list;
        }

        public void setAction_list(List<ActionListBean> action_list) {
            this.action_list = action_list;
        }

        public List<Filter_Words> getFilter_words() {
            return filter_words;
        }

        public void setFilter_words(List<Filter_Words> filter_words) {
            this.filter_words = filter_words;
        }

        public List<MiddleImageBean> getImage_list() {
            return image_list;
        }

        public void setImage_list(List<MiddleImageBean> image_list) {
            this.image_list = image_list;
        }

        public List<LargeImageBean> getLarge_image_list() {
            return large_image_list;
        }

        public void setLarge_image_list(List<LargeImageBean> large_image_list) {
            this.large_image_list = large_image_list;
        }

        public static class LargeImageBean implements Serializable{
            public String height;
            public String uri;
            public String url;
            public String width;
            public ArrayList<UrlList> url_list;
        }
        public static class MiddleImageBean implements Serializable{
            public String height;
            public String uri;
            public String url;
            public String width;
            public ArrayList<UrlList> url_list;

        }
        public static class UrlList implements Serializable{
            public String url;
        }

        public static class ActionListBean implements Serializable{
            private int action;
            private String desc;
            private ExtraBean extra;

            public int getAction() {
                return action;
            }

            public void setAction(int action) {
                this.action = action;
            }

            public String getDesc() {
                return desc;
            }

            public void setDesc(String desc) {
                this.desc = desc;
            }

            public ExtraBean getExtra() {
                return extra;
            }

            public void setExtra(ExtraBean extra) {
                this.extra = extra;
            }

            public static class ExtraBean implements Serializable{
            }
        }
    }


}
